package cn.bonoon.kernel.io;

import org.springframework.util.Assert;
import org.springframework.web.multipart.MultipartFile;


public enum StorageFileLimit{
	
	/** 限定上传的文件数必须为指定文件数量，多或少都验证不通过 */
	ONLY {
		@Override
		public void check(MultipartFile[] files, int count) {
			Assert.isTrue(files.length == count, "上传的文件(图片)必须并且只能等于" + count + "个");
		}
	},
	
	/** 上传的文件必须大于指定的最小值 */
	MIN {
		@Override
		public void check(MultipartFile[] files, int count) {
			Assert.isTrue(files.length > count, "上传的文件(图片)必须大于" + count + "个");
		}
	},
	
	/** 上传的文件不能超过指定的上线 */
	MAX {
		@Override
		public void check(MultipartFile[] files, int count) {
			Assert.isTrue(files.length <= count, "上传的文件(图片)不能超过" + count + "个");
		}
	};
	
	public abstract void check(MultipartFile[] files, int count);
}
